The present invention relates to a method of reading an object-applied bar code.
As is known, reading a bar code from an image picked up by a CCD telecamera poses various problems involving several factors.
A first factor is the poor definition of the image. To obtain the largest possible scanning field using a low-cost processing system, the acquired images must comprise the smallest possible number of pixels. At present, normal data acquisition systems require that the sampling frequency be at least twice the maximum frequency of the sampled signal, so that, in the case of a bar code, if the module is defined as the nominal dimension of the smallest component element (bar or space), an exact reconstruction of the corresponding square wave would require an enormous number of pixels per module.
A second factor involves random code orientation and anisotropy of the telecamera. As the orientation of acquired codes is not normally fixed with respect to the axes of the telecamera, systems must be used which are capable of reading the code regardless of how it is oriented, or which are capable of rotating the image accordingly. Moreover, as the pixels of any telecamera are square, the code image varies according to orientation of the code. In short, the difficulties encountered in reading the code differ according to its orientation.
A third factor involves grey level quantization and acquisition noise. As is known, a pixel is always coded by a finite number of grey levels, whereas the high acquisition speed demanded by current scanning systems prevents, the use of analog-digital converters with a large number of significant bits. Moreover, the thermal noise of the telecamera and the analog part of the read system has a negative effect on the accuracy of the sampled signal.
A fourth factor is blooming of the image, due to the code image being acquired by a system of lenses inevitably involving a certain amount of aberration and lack of uniformity, and due to the distance of the code from the telecamera not always being accurately known.
A fifth factor involves illumination of the code. As is known, the code is illuminated by a lighting device set up in a fixed position, so that the distance between the lighting device and the code, and the distance between the code and the telecamera vary continually according to the location of the code within the scanning field, thus resulting at times in the acquisition of poorly illuminated codes and, hence, in acquisition accompanied by severe quantization noise. On the other hand, if the code is a reflecting type or covered with a film of plastic material, even the best illumination system may result in reflection capable of dazzling the telecamera.
Finally, a sixth factor involves flaws in the code itself (smudges, chafing, poor contrast, tears, incorrect relationship between the code elements, etc.) due to printing errors or deterioration of the print medium.